# 统计指定目录大小的函数
import os


def dir_size(path):
    """
    统计指定目录的大小（包含子目录）
    :param path: 目录地址
    :return: 返回目录大小
    """
    if not os.path.exists(path):
        # 判断要访问的文件夹是否存在
        raise Exception("要统计的文件夹不存在")
    size = 0  # 文件夹大小，默认零
    dir_list = os.listdir(path)  # 文件夹下内容List
    for item in dir_list:
        itemPath = path + os.sep + item
        if os.path.isfile(itemPath):
            size += os.path.getsize(itemPath)
        else:
            size += dir_size(itemPath)  # 递归调用
    return size


while True:
    to_size_dir = input("请输入要统计的文件目录,输入N结束：")
    if to_size_dir == "N":
        break
    print("文件夹大小：{0} 字节".format(dir_size(to_size_dir)))
